[INFO] fetching crate scf-core 1.5.0...
[INFO] testing scf-core-1.5.0 against master#1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 for pr-154065-1
[INFO] extracting crate scf-core 1.5.0 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate scf-core 1.5.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate scf-core 1.5.0
[INFO] tweaked toml for crates.io crate scf-core 1.5.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate scf-core 1.5.0 on toolchain 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate scf-core 1.5.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded unsafe-any-ors v1.0.0
[INFO] [stderr]   Downloaded typemap-ors v1.0.0
[INFO] [stderr]   Downloaded thread-id v5.0.0
[INFO] [stderr]   Downloaded log-mdc v0.1.0
[INFO] [stderr]   Downloaded mock_instant v0.6.0
[INFO] [stderr]   Downloaded destructure_traitobject v0.2.0
[INFO] [stderr]   Downloaded lang-extension v1.3.0
[INFO] [stderr]   Downloaded humantime v2.2.0
[INFO] [stderr]   Downloaded indexmap v2.10.0
[INFO] [stderr]   Downloaded cc v1.2.27
[INFO] [stderr]   Downloaded log4rs v1.4.0
[INFO] [stderr]   Downloaded syn v2.0.104
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 121fc42dc6b18c33f6edb5141c5a31000fda405accaf3632fa4767b1562c8ef8
[INFO] running `Command { std: "docker" "start" "-a" "121fc42dc6b18c33f6edb5141c5a31000fda405accaf3632fa4767b1562c8ef8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "121fc42dc6b18c33f6edb5141c5a31000fda405accaf3632fa4767b1562c8ef8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "121fc42dc6b18c33f6edb5141c5a31000fda405accaf3632fa4767b1562c8ef8", kill_on_drop: false }`
[INFO] [stdout] 121fc42dc6b18c33f6edb5141c5a31000fda405accaf3632fa4767b1562c8ef8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b79093dbb8e061c68fefbbfff99e37269267e8e49a134304be6e19a63a4a30aa
[INFO] running `Command { std: "docker" "start" "-a" "b79093dbb8e061c68fefbbfff99e37269267e8e49a134304be6e19a63a4a30aa", kill_on_drop: false }`
[INFO] [stderr]    Compiling lang-extension v1.3.0
[INFO] [stderr]    Compiling scf-core v1.5.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.50s
[INFO] running `Command { std: "docker" "inspect" "b79093dbb8e061c68fefbbfff99e37269267e8e49a134304be6e19a63a4a30aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b79093dbb8e061c68fefbbfff99e37269267e8e49a134304be6e19a63a4a30aa", kill_on_drop: false }`
[INFO] [stdout] b79093dbb8e061c68fefbbfff99e37269267e8e49a134304be6e19a63a4a30aa
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bac5af72fac272f9b2bc9945609196822781fb994bda32b124cc2281fda33855
[INFO] running `Command { std: "docker" "start" "-a" "bac5af72fac272f9b2bc9945609196822781fb994bda32b124cc2281fda33855", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling destructure_traitobject v0.2.0
[INFO] [stderr]    Compiling hashbrown v0.15.4
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling anyhow v1.0.98
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling iana-time-zone v0.1.63
[INFO] [stderr]    Compiling log-mdc v0.1.0
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling thread-id v5.0.0
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling humantime v2.2.0
[INFO] [stderr]    Compiling arc-swap v1.7.1
[INFO] [stderr]    Compiling unsafe-any-ors v1.0.0
[INFO] [stderr]    Compiling mock_instant v0.6.0
[INFO] [stderr]    Compiling typemap-ors v1.0.0
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling indexmap v2.10.0
[INFO] [stderr]    Compiling ordered-float v2.10.1
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling derive_more v2.0.1
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling serde-value v0.7.0
[INFO] [stderr]    Compiling scf-core v1.5.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling log4rs v1.4.0
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 21.51s
[INFO] running `Command { std: "docker" "inspect" "bac5af72fac272f9b2bc9945609196822781fb994bda32b124cc2281fda33855", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bac5af72fac272f9b2bc9945609196822781fb994bda32b124cc2281fda33855", kill_on_drop: false }`
[INFO] [stdout] bac5af72fac272f9b2bc9945609196822781fb994bda32b124cc2281fda33855
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e2bc83a6a3bf3d3ee78a21188192301ae76a63b12dfe2d39c18820953d64fb8c
[INFO] running `Command { std: "docker" "start" "-a" "e2bc83a6a3bf3d3ee78a21188192301ae76a63b12dfe2d39c18820953d64fb8c", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.13s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/scf_core-7649f707f672162e)
[INFO] [stdout] 
[INFO] [stdout] running 22 tests
[INFO] [stdout] 2026-03-30T06:29:15.594606757+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 10,
[INFO] [stdout] 	property: "10"
[INFO] [stdout] 2026-03-30T06:29:15.595646288+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 10,
[INFO] [stdout] 	property: "10"
[INFO] [stdout] 2026-03-30T06:29:15.595769137+00:00 DEBUG scf_core::source::default - property value converted by converter, from "20" to 20,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: true,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.595929448+00:00 DEBUG scf_core::source::default - property value converted by converter, from "30" to 30,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: true,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.595968268+00:00 WARN scf_core::manager::default - ignore dynamic change for static property, dynamic change for static property will be applied when app restart, static:
[INFO] [stdout] 	Some(20),
[INFO] [stdout] 	dynamic:
[INFO] [stdout] 	Some(30),
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.595993997+00:00 WARN scf_core::manager::default - ignore dynamic change for static property, dynamic change for static property will be applied when app restart, static:
[INFO] [stdout] 	Some(20),
[INFO] [stdout] 	dynamic:
[INFO] [stdout] 	None,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.597124488+00:00 DEBUG scf_core::source::default - property value converted by converter, from "20" to 20,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.597243437+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 20,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.597293437+00:00 DEBUG scf_core::source::default - property value converted by converter, from "30" to 30,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_required",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: true
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.597347308+00:00 ERROR scf_core::manager::default - ignore dynamic change for required property, required property cannot be changed to None, now keep its current value, you should fix the invalid change at once, or app will panic when next app restart, property:
[INFO] [stdout] 	"key_required"
[INFO] [stdout] 2026-03-30T06:29:15.600882537+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.601065628+00:00 WARN scf_core::manager::default - property value in config source "test"
[INFO] [stdout] 	changed by property filter, from: 10,
[INFO] [stdout] 	to: 5,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2026-03-30T06:29:15.601094557+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 5,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.601137008+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2026-03-30T06:29:15.601173597+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.601202048+00:00 WARN scf_core::manager::default - property value in config source "test"
[INFO] [stdout] 	changed by property filter, from: 10,
[INFO] [stdout] 	to: 5,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2026-03-30T06:29:15.601225768+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 5,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.601239668+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2026-03-30T06:29:15.607730807+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: Some(0),
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.607986177+00:00 INFO scf_core::manager::default - use property value in config source "dynamic_source",
[INFO] [stdout] 	value: 10,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.608076997+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: Some(0),
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.608128397+00:00 INFO scf_core::manager::default - use property value in config source "dynamic_source",
[INFO] [stdout] 	value: 10,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.608175887+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: ParseIntError { kind: InvalidDigit }
[INFO] [stdout] 2026-03-30T06:29:15.608236487+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: ParseIntError { kind: InvalidDigit }
[INFO] [stdout] 2026-03-30T06:29:15.608290267+00:00 DEBUG scf_core::source::default - property value converted by converter, from "12" to 12,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: Some(0),
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.608330937+00:00 WARN scf_core::manager::default - property value in config source "dynamic_source"
[INFO] [stdout] 	changed by property filter, from: 12,
[INFO] [stdout] 	to: 13,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: Some(0),
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2026-03-30T06:29:15.608368657+00:00 INFO scf_core::manager::default - use property value in config source "dynamic_source",
[INFO] [stdout] 	value: 13,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.608434357+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: ParseIntError { kind: InvalidDigit }
[INFO] [stdout] 2026-03-30T06:29:15.608496297+00:00 WARN scf_core::manager::default - property value in config source "test"
[INFO] [stdout] 	changed by property filter, from: 20,
[INFO] [stdout] 	to: 21,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: Some(0),
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2026-03-30T06:29:15.608538707+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 21,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.608593657+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: ParseIntError { kind: InvalidDigit }
[INFO] [stdout] test facade::tests::new_source_config ... ok
[INFO] [stdout] 2026-03-30T06:29:15.608780717+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: true
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.609152407+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] test facade::tests::new_manager_config ... 2026-03-30T06:29:15.609292607+00:00 WARN scf_core::manager::default - property value in config source "test"
[INFO] [stdout] 	changed by property filter, from: 10,
[INFO] [stdout] 	to: 5,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2026-03-30T06:29:15.609347857+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 5,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.609378527+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: true
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] ok
[INFO] [stdout] 2026-03-30T06:29:15.609499397+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] test facade::tests::new_property_config ... ok
[INFO] [stdout] test manager::default::test::manager_config_test ... ok
[INFO] [stdout] test facade::tests::new_source_test ... ok
[INFO] [stdout] 2026-03-30T06:29:15.609778617+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.609831497+00:00 WARN scf_core::manager::default - property value in config source "test"
[INFO] [stdout] 	changed by property filter, from: 10,
[INFO] [stdout] 	to: 5,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2026-03-30T06:29:15.609890517+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 5,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.609921187+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2026-03-30T06:29:15.609968787+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2026-03-30T06:29:15.610012517+00:00 DEBUG scf_core::source::default - property value converted by converter, from "11" to 11,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.610048527+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 11,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.610075957+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2026-03-30T06:29:15.610120437+00:00 DEBUG scf_core::source::default - property value converted by converter, from "11" to 11,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.610157587+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 11,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.610183917+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2026-03-30T06:29:15.610230217+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2026-03-30T06:29:15.610273057+00:00 DEBUG scf_core::source::default - property value converted by converter, from "12" to 12,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.610317187+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 12,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.610375897+00:00 DEBUG scf_core::source::default - property value converted by converter, from "12" to 12,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.610419957+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 12,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.610442907+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2026-03-30T06:29:15.610483327+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 20,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.610531207+00:00 DEBUG scf_core::source::default - property value converted by converter, from "1" to 1,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] 2026-03-30T06:29:15.610581217+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 20,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2026-03-30T06:29:15.611399517+00:00 DEBUG scf_core::source::default - property value converted by converter, from "11" to 11,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "11",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }
[INFO] [stdout] test property::default::test::property_change_event_test ... ok
[INFO] [stdout] test facade::tests::new_manager ... ok
[INFO] [stdout] test manager::default::test::static_property ... ok
[INFO] [stdout] test manager::default::test::required_property_dynamic ... ok
[INFO] [stdout] test facade::tests::properties ... ok
[INFO] [stdout] test property::default::test::property_config_test ... ok
[INFO] [stdout] test manager::default::test::required_property ... ok
[INFO] [stdout] test manager::default::test::dynamic_test ... ok
[INFO] [stdout] test source::default::tests::source_config_test ... ok
[INFO] [stdout] 2026-03-30T06:29:15.612496307+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "xx",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "xx",
[INFO] [stdout] 	value_type: TypeId(0x56ced5e4a15bd89050bb9674fa2df013),
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> }],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn(&'_ alloc::string::String) -> core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>> },
[INFO] [stdout] 	convert error: "source value \"xx\" is of an unsupported type: \"&str\", only support: \"alloc::string::String\""
[INFO] [stdout] test source::default::tests::source_test ... ok
[INFO] [stdout] test source::default::tests::source_event_test ... ok
[INFO] [stdout] test tests::it_works ... ok
[INFO] [stdout] test manager::default::test::manager_test ... ok
[INFO] [stdout] test manager::default::test::required_property3 - should panic ... ok
[INFO] [stdout] test manager::default::test::required_property2 - should panic ... ok
[INFO] [stdout] test property::default::test::invalid_property_config_test - should panic ... ok
[INFO] [stdout] test property::default::test::property_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]      Running tests/configuration_manager_test.rs (/opt/rustwide/target/debug/deps/configuration_manager_test-9862f993d86f5602)
[INFO] [stdout] running 19 tests
[INFO] [stdout] test test_change_listener ... ok
[INFO] [stdout] test test_get_properties ... ok
[INFO] [stdout] test test_get_property_with_converter ... ok
[INFO] [stdout] test test_get_property_with_dynamic_source ... ok
[INFO] [stdout] test test_get_property_with_filter ... ok
[INFO] [stdout] test test_property_config_required_dynamic ... ok
[INFO] [stdout] test test_property_config_doc ... ok
[INFO] [stdout] test test_property_config_required3 ... ok
[INFO] [stdout] test test_property_config_static ... ok
[INFO] [stdout] test test_property_source ... ok
[INFO] [stdout] test test_same_config_same_property ... ok
[INFO] [stdout] test test_property_config_required_default ... ok
[INFO] [stdout] test test_get_properties_multiple_source ... ok
[INFO] [stdout] test test_duplicate_priority_source - should panic ... ok
[INFO] [stdout] test test_get_property_with_diff_filter_in_similar_config - should panic ... ok
[INFO] [stdout] test test_property_config_required2 - should panic ... ok
[INFO] [stdout] test test_property_config_required - should panic ... ok
[INFO] [stdout] test test_property_config_required_dynamic2 - should panic ... ok
[INFO] [stdout] test test_same_key_different_config - should panic ... ok
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests scf_core
[INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "e2bc83a6a3bf3d3ee78a21188192301ae76a63b12dfe2d39c18820953d64fb8c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e2bc83a6a3bf3d3ee78a21188192301ae76a63b12dfe2d39c18820953d64fb8c", kill_on_drop: false }`
[INFO] [stdout] e2bc83a6a3bf3d3ee78a21188192301ae76a63b12dfe2d39c18820953d64fb8c
